package com.uenpay.oem.data.bean;

import com.google.gson.annotations.SerializedName;

import java.util.ArrayList;
import java.util.List;

/**
 * Created by liulou on 2017/4/20.
 * desc: 首页便民功能实体类
 */

public class HomeFeaturesBean {

    @SerializedName("top")
    private List<Feature> topFeature;
    @SerializedName("show")
    private List<Feature> gridShowFeature;
    @SerializedName("hide")
    private List<Feature> gridHideFeature;

    public HomeFeaturesBean() {
        topFeature = new ArrayList<>();
        gridShowFeature = new ArrayList<>();
        gridHideFeature = new ArrayList<>();
    }

    public HomeFeaturesBean(List<Feature> topFeature, List<Feature> gridShowFeature, List<Feature> gridHideFeature) {
        this.topFeature = topFeature;
        this.gridShowFeature = gridShowFeature;
        this.gridHideFeature = gridHideFeature;
    }

    public List<Feature> getTopFeature() {
        return topFeature;
    }

    public void setTopFeature(List<Feature> topFeature) {
        this.topFeature = topFeature;
    }

    public List<Feature> getGridShowFeature() {
        return gridShowFeature;
    }

    public void setGridShowFeature(List<Feature> gridShowFeature) {
        this.gridShowFeature = gridShowFeature;
    }

    public List<Feature> getGridHideFeature() {
        return gridHideFeature;
    }

    public void setGridHideFeature(List<Feature> gridHideFeature) {
        this.gridHideFeature = gridHideFeature;
    }

    public static class Feature {
        private String name;
        private int iconId;
        @SerializedName("icon_name")
        private String iconName;
        /**
         * 主要用途是在#HomeFeatureSelectActivity中需要将gridShowFeature和gridHideFeature合到一个list中
         * 因此将它作为标识，用户添加或删除一些Feature点击完成时，根据这个标识重新分类到gridShowFeature和gridHideFeature中
         */
        private boolean isShow;

        public Feature() {

        }

        public Feature(String name, int iconId) {
            this.name = name;
            this.iconId = iconId;
        }

        public Feature(String name, String iconName) {
            this.name = name;
            this.iconName = iconName;
        }

        public String getName() {
            return name;
        }

        public void setName(String name) {
            this.name = name;
        }

        public int getIconId() {
            return iconId;
        }

        public String getIconName() {
            return iconName;
        }

        public void setIconName(String iconName) {
            this.iconName = iconName;
        }

        public void setIconId(int icon) {

            this.iconId = icon;
        }

        public boolean isShow() {
            return isShow;
        }

        public void setShow(boolean show) {
            isShow = show;
        }
    }

}
